iT邦幫忙

物件導向 (object-oriented,oo)相關文章
共有 31 則文章

技術 C1 彈跳吧!彈珠-粒子系統彈性碰撞

引言 在上一個主題中,我們成功實現了基本的動畫效果和粒子系統,並設計了一個獨立的繪圖管理工具。然而,對於一個相對簡單的粒子系統來說,這樣的設計似乎有些多餘,因為...

技術 B6 從掠食者-獵物模型瞥見粒子系統-魔幻引力

架構設計 在昨天的文章中,我們完成了一個繪圖工具 painter,已經完成渲染的步驟,今天,我們將把演算法的細節補足: export default funct...

技術 B5 掌握分層渲染:製作高效 Canvas 繪圖工具

架構設計 在昨天的文章中,我們探討了如何創建動態效果,雖然過程中省略了一些細節,但這為我們打下了良好的基礎。今天,我們將逐步補充那些細節,根據昨天的討論,目前的...

技術 B4 在旋轉的沙漏中:掠食者與獵物的動態美學

架構設計 延續前幾篇的設計模式,我們的目標是模組化演算法,提供一個生成演算法的工廠,並且把使用方法封裝在 update 和 render 方法中,這裡,物件的初...

鐵人賽 Modern Web DAY 12

技術 物件導向概念

物件導向是一種開發程式的方法,就字面的意思是以物件為中心,把數據資料(property)與其相對應的操作(method)包在一起,來模擬現實世界實體和其相互作用...

鐵人賽 自我挑戰組 DAY 7

技術 【從工程師升級成為資深工程師的那檔事 Day7】淺談 OOA與 OOD

程式的撰寫有很多種方式 OOP、FP、AOP、COP...等(之後在專門做一期為大家解說),不過這個系列還是主要專注在物件導向程式設計(OOP)上面跟大家分享。...

技術 什麼是軟體工程 (Software Engineering)?我們還需要它嗎?

軟件工程的範圍極其廣泛。軟件工程的某些方面可以歸類為數學或計算機科學;其他方面屬於經濟、管理或心理學領域。為了展示軟件工程的廣泛領域。 無論我們是處理計費還是防...

鐵人賽 Modern Web DAY 28

技術 Chapter5 - 當一個勤勞的園丁,來修剪我們美麗的樹(III)Canvas動畫 讓樹隨著讀取畫面長大

題外話 補充昨天忘記下的結論:不管要繪製的圖案多大,都建議畫(儲存)在一個和原圖一樣大的canvas上,取代原本的圖案,當作未來的繪製來源。 let leafI...

鐵人賽 Modern Web DAY 27

技術 Chapter5 - 當一個勤勞的園丁,來修剪我們美麗的樹(II)Canvas素材 修圖、壓縮、效能優化

樹葉問題 先前在第三章畫樹時,就有發現把樹葉畫上去時,系統工作時間會增加而導致掉偵,原圖是300x300,50kb左右,不是很大,但是我們要畫一大堆落葉的話,計...

鐵人賽 Modern Web DAY 23

技術 Chapter4 - Canvas背景動畫(IV)把紛飛的落葉,通通抓回來當作收藏吧!

今天挑戰半小時寫完一篇文章(被打,其實我寫完程式了,把文章撰寫出來就好嚕。 https://jerry-the-potato.github.io/Chapt...

鐵人賽 Modern Web DAY 18

技術 Chpater3 今天來學習畫一棵樹(IV)淺談效能和演算法,以迭代取代遞迴吧!

昨天發完文後,覺得對於演算法還是心有不甘,便上網搜尋了一下,雖然沒直接給到答案,間接的給了我一些大膽的想法。 具體參考的是這篇:https://ithelp.i...

鐵人賽 Modern Web DAY 17

技術 Chpater3 今天來學習畫一棵樹(III)終於讓樹搖擺起來囉!原來遞迴與碎形可以塑造大自然之美

先補上Demo 將前兩天畫好的樹枝骨幹,搭配第二章學的動畫效果,就能讓樹開始擺動了:https://jerry-the-potato.github.io/Cha...

鐵人賽 Modern Web DAY 16

技術 Chpater3 今天來學習畫一棵樹(II)以有規律的隨機畫出擬真的樹枝 原來畫一顆樹不難嘛!

此篇接續第一篇:https://ithelp.ithome.com.tw/articles/10269980接下來我們把造樹的步驟拆分成骨幹、畫樹枝、樹葉,而到...

鐵人賽 Modern Web DAY 15

技術 Chapter3 今天來學習畫一棵樹(I)學學人家DOM 自己用遞迴做一個樹狀圖結構

你是說...樹嗎? 嘿~丟!鐵人賽至今已經過半,實在是油盡燈枯,想不到主題了,剛好看到這兩個很讚的樹,覺得很適合這次的主題!加上筆者我又對大自然的碎形相當著迷,...

鐵人賽 Modern Web DAY 12

技術 Chapter2 - 重構完了 還是覺得物件很複雜嗎?直接上圖,就明白物件讓你更輕鬆

前言 前天談到如何避免程式碼散落四處、維護困難,帶大家改寫了物件格式,過了兩天,我突然想到,當時花太多篇幅在解釋觀念和舉例子,結果沒有實際把程式碼秀給大家看,果...

鐵人賽 Modern Web DAY 11

技術 Chapter2 - 用物件看真實世界(II)仍然對物件感到疑惑嗎?用你最愛點的豚骨拉麵做比喻

本文是第二篇,有些變數的名詞會沿用第一篇,建議看過再繼續閱讀唷! 談論更深入一層前,先讓我們複習一下 上回提到,我們用物件的形式儲存了落葉的變數和函式,認識...

鐵人賽 Modern Web DAY 10

技術 Chapter2 - 用物件看真實世界(I)寫程式為什麼需要物件?如何簡化畫落葉的流程?

物件是什麼?為什麼需要它呢? 讓我們接續上回 完成昨天的演示後,也許有人會覺得,處理落葉動畫的流程很簡單,就是「讓落葉自然落下」然後「在畫布上繪製落葉」兩步驟而...

鐵人賽 Modern Web DAY 9

技術 Chapter2 - Canvas動畫(III)讓我們跳過微積分 用輕鬆的方式畫落葉吧

接下來終於要談談,讓我們更輕鬆的物件了 其實網路上有很多相關的文章,都可以帶你更深入JS時,但常常問題在於,他們的舉例都不夠實際,並不是說不好,而是「需求的問題...

技術 python 物件導向範例

class musashi: def __init__(self,name): self.__name = name def s...

鐵人賽 Software Development DAY 9

技術 沒程式基礎也能懂~淺談物件導向與SOLID原則

大名鼎鼎的oo (object-oriented),對沒有程式基礎或剛開始學寫程式的人來說,可能聽起來像是某種代號,但其實物件導向在程式設計領域非常重要! 而O...

技術 [AOP系列]簡單介紹AOP的概念

AOP(Aspect-oriented programming) 名詞解釋 Aspect意思為剖面,Oriented意思為導向,所以翻譯為剖面導向程式設計,這意...

鐵人賽 Software Development DAY 14

技術 物件導向設計原則中的五個原則縮寫叫SOLID

昨天有提到物件模型可以幫助我們分解需求、設計系統、實作系統。於1980年代在大型系統設計中有很多研究提出很多設計原則,Robert C. Martin整理了很多...

鐵人賽 Software Development DAY 13

技術 物件模型

昨天提到物件模型主要由四個元素構成: 抽象化 封裝 模組化 階層 另外還有三個次要元素: 定型 並行性 續存性 物件模型可以幫助我們分析需求、設計系統、...

鐵人賽 Software Development DAY 12

技術 物件導向

今天的內容會有比較多的引用,主要是關於書中大師對於物件導向的概念描述,對我來說不是一兩天便可以理解清楚並用自己的文字來表達,今天主要參考的書是物件導向分析設計與...

鐵人賽 Software Development DAY 11

技術 因為複雜

因為複雜   隨著科技的進步,電腦製造成本下降與運算能力提升,電腦能做的工作越來越多以應付繁雜的日常需求,隨著高階語言的出現(為了應付需求),我們也因能開發出更...

鐵人賽 自我挑戰組 DAY 2

技術 Day 1|我不依~我不依~什麼是相依性?

管理相依性 Manage Dependencies 在物件導向的程式世界中,物件會有所謂 相依性 的問題,什麼是相依性呢?我們舉現實生活中的車子來理解這個抽象...

鐵人賽 Modern Web DAY 16
ASP.NET Web Form 入門30天 系列 第 16

技術 [ASP.NET] [C#] 多載 (Overload)

本篇擷取重點: 多載 (Overload) 是什麼 一、多載 (Overload) 多載(Overloading)在寫作程式時,是一個非常實用的觀念。當我...

鐵人賽 自我挑戰組 DAY 1

技術 Day 0 |物件導向到底是蝦米碗糕呢?老闆來碗方向感吧~

還記得一開始自學程式語言時,大家一定或多或少都聽過一個名詞 物件導向。然後身為程式新手和非程式相關科系畢業的你也許會開始 Google 它到底是什麼意思,然後你...

鐵人賽 Modern Web DAY 15
ASP.NET Web Form 入門30天 系列 第 15

技術 [ASP.NET] [C#] 物件導向 - 繼承者們,線上看 XDD

本篇擷取重點: 繼承 繼承的目的及手段 繼承的類別階層 其他和繼承相關的問題 一、繼承(Inheritance) 繼承是一種類別間的階層式分類關係,...

鐵人賽 Modern Web DAY 10
ASP.NET Web Form 入門30天 系列 第 10

技術 [ASP.NET] [C#] 物件導向 - 封裝

本篇擷取重點: 封裝是什麼 封裝 能見度之影響 一、封裝的目的 封裝(Encapsulation)的目的,是將程式碼切割成許多模組(Module),使各模...